草庐IT

java - 创建一个 JSONArray

全部标签

javascript:转换一个用 eval 创建的对象

我有一组在整个应用程序中使用的javascript类。在一种情况下,我想从形状匹配我的一个类的ajax响应中评估一些json。我正在使用jqueryparseJSON方法为我进行评估。唯一的问题是我现在想调用我的类中定义的方法,但我知道该方法不会存在于已评估的对象上。让这个方法在我的新对象上可用的最好方法是什么。有没有办法“转换”它? 最佳答案 JavaScript中没有转换的概念。相反,您可以修改类的构造函数以接受普通对象。你如何做到这一点取决于你如何设置你的类,但可以简单地将对象的浅拷贝包含到类的新实例中:varMyClass=

javascript - AngularJS - 创建服务对象

与其在Angular邮件列表中发帖,我认为这可能更多是关于javascript的问题。希望SO社区也能给出更快的响应。我正在尝试将数据封装在服务中并注入(inject)到Controller中。angular.module('myApp.services',['ngResource']).factory('Player',function($resource){varPlayer;Player={resource:$resource('/api/Player/:_id',{})};returnPlayer});functionPlayerDetailCtrl(Player,$route

javascript - 分配一个新的字符串值会产生需要收集的垃圾吗?

考虑这个javascript代码:vars="Somestring";s="Morestring";垃圾收集器(GC)在这种操作之后是否还有工作要做?(我想知道在尝试最小化GC暂停时是否应该担心分配字符串文字。)e:让我觉得有点好笑的是,虽然我在问题中明确指出我需要尽量减少GC,但每个人都认为我错了。如果真的必须知道特定的细节:我有一个javascript游戏——它在Chrome中运行良好,但在Firefox中有半频繁的暂停,这似乎是由于GC。(我什至检查过Firefox的MemChaser扩展,暂停与垃圾收集完全一致。) 最佳答案

javascript - for 循环会隐式创建一个 block 吗?

我正在Node.JS中使用let(需要标志--harmony和--use-strict)。据我了解,let语句允许block范围声明。请考虑以下事项:leta;for(leti=0;i涉及多少block作用域?i位于哪个block范围内?我是否正确地认为要使这个示例起作用,涉及三个block作用域,其中一个作用域由for循环隐式创建,如下所示?{//block#1leta;{//block#2(contains`i`)leti;for(i=0;i 最佳答案 基于最近的(2013年5月14日)draftofES6:是的。您可以在第12

javascript - Webkit - 动态创建的样式表 - 它什么时候真正加载?

我有一些代码(实际上不是我的,而是SlickGrid库)创建了一个元素,将其插入DOM,然后立即尝试在document.styleSheets集合中查找新样式表。在WebKit中,这有时会失败。我实际上不知道情况是什么,但这并不是一贯可重现的。我想我可以通过更改代码来解决这个问题,这样在load之前不会检查StyleSheet对象。样式元素上的事件,如下所示:$style=$("").appendTo($("head"));varrules=...;//codetocreatethetextoftheruleshereif($style[0].styleSheet){//IE$styl

javascript - HTML5 Canvas 中的一百个上下文与一个上下文?

我正在创建一个使用CanvasAPI的简单物理引擎。性能方面的最佳实践是什么?是为Canvas中的每个对象(例如每个球、盒子等)创建一个单独的上下文,还是只使用一个上下文?后者涉及为每个要重绘的对象定义上下文中的路径,以及设置颜色等。当对象数量接近一百时使用多个上下文是个坏主意吗?我之所以问,是因为我不想在一百个工作小时后得到惊喜,因为我采用了错误的方法。 最佳答案 多Canvas的性能提升来自了解您使用多Canvas的原因。除非有用,否则不要使用多个Canvas:Canvas是适度昂贵的元素。在移动设备上,Canvas仍然很慢——

javascript - 根据另一个数组中的数据对数组进行排序

我有两个对象数组,如下所示:items=[{"id":"5","tobuy":"1","name":"pop"},{"id":"6","tobuy":"1","name":"fish"},{"id":"7","tobuy":"0","name":"soda"}]pkgs=[{"item_id":"5","store":"Market","aisle":"3"},{"item_id":"6","store":"Market","aisle":"2"},{"item_id":"6","store":"Dept","aisle":"8"},{"item_id":"7","store":"Ma

javascript - 使用 d3 为传单创建密度和值(value)热图层

我想用d3在传单map之上实现一个热图层。我有大约2-3k个数据点。我的数据格式如下:[{lat:..,lon:..,value:..},{lat:..,lon:..,value:..},...]理想情况下,我想在基于值的热图和基于点密度的热图之间切换。我还需要能够动态更新数据。从视觉上看,我的目标是这样的:我知道传单有一个coupleofheatmapplugins,两者似乎都不活跃。Heatmap.js最接近我需要的。但是,它似乎没有维护,文档与源代码不一致,而且运行速度太慢。我已经广泛使用d3,如果可能的话,我更愿意将它用于热图层。周围有一两个方block(例如thisone),

javascript - emberjs 为一个路由使用多个路径/url

在Ember中我可以使用这个:App.Router.map(function(){this.route('accomodations');});因此,如果访问/accomodations,它将加载该View。我还可以添加:App.Router.map(function(){this.route('accomodations',{path:'/travel'});});所以如果一个人去/travel,它会去同一个View。我希望能够让/accomodations和/travel转到同一个View?这可能吗?我知道这个:App.Router.map(function(){this.rout

javascript - 是否可以在每次创建数组时执行一个函数?

创建数组后,我需要一个函数在该数组上自动调用。我认为这可以通过某种方式使用Array的原型(prototype)/构造函数实现,但我不知道如何解决这个问题。所以我有一个数组,我对其进行了初始化:vararr=[1,2,3];现在假设我有这样一个函数:Array.prototype.objectArray=function(){varresult=this.every(function(elem){returntypeofelem=="object";});this.isObjectArray=result;}因此在这种情况下,调用此数组上的函数会将其isObjectArray参数分配给